package huoshan

type CertVerifyQueryData struct {
	AlgorithmBaseResp *struct {
		StatusCode    int    `json:"status_code"`
		StatusMessage string `json:"status_message"`
	} `json:"algorithm_base_resp"`
	BinaryDataBase64 []string `json:"binary_data_base64"`
	Result           bool     `json:"result"`
	Images           *struct {
		ImageBest string `json:"image_best"`
		ImageEnv  string `json:"image_env"`
	} `json:"images"`
	Video             string `json:"video"`
	SourceCompDetails *struct {
		Score      float64 `json:"score"`
		Thresholds *struct {
			E3 float64 `json:"1e-3"`
			E4 float64 `json:"1e-4"`
			E5 float64 `json:"1e-5"`
			E6 float64 `json:"1e-6"`
		} `json:"thresholds"`
	} `json:"source_comp_details"`
	TosData *struct {
		Bucket       string `json:"bucket"`
		ImageEnvKey  string `json:"image_env_key"`
		ImageBestKey string `json:"image_best_key"`
		VideoKey     string `json:"video_key"`
		CertDataKey  string `json:"cert_data_key"`
	} `json:"tos_data"`
	VerifyAlgorithmBaseResp *struct {
		StatusCode    int    `json:"status_code"`
		StatusMessage string `json:"status_message"`
	} `json:"verify_algorithm_base_resp"`
	VerifyReqMeasureInfo *struct {
		MeasureType string `json:"measure_type"`
		Value       int    `json:"value"`
	} `json:"verify_req_measure_info"`
}

type CertVerifyQueryResult struct {
	ResponseMetadata ResponseMetadata     `json:",omitempty"`
	RequestId        string               `json:"request_id"`
	Code             int                  `json:"code"`
	Message          string               `json:"message"`
	Status           int                  `json:"status"`
	TimeElapsed      string               `json:"time_elapsed"`
	Data             *CertVerifyQueryData `json:"data"`
}

type ErrorObj struct {
	CodeN   int
	Code    string
	Message string
}

type ResponseMetadata struct {
	RequestId string
	Service   string    `json:",omitempty"`
	Region    string    `json:",omitempty"`
	Action    string    `json:",omitempty"`
	Version   string    `json:",omitempty"`
	Error     *ErrorObj `json:",omitempty"`
}

type AssumeRoleResp struct {
	ResponseMetadata ResponseMetadata
	Result           *AssumeRoleResult `json:",omitempty"`
}

type AssumeRoleResult struct {
	Credentials     *Credentials
	AssumedRoleUser *AssumeRoleUser
}

type AssumeRoleRequest struct {
	DurationSeconds int
	Policy          string
	RoleTrn         string
	RoleSessionName string
}

type AssumeRoleUser struct {
	Trn           string
	AssumedRoleId string
}

type Credentials struct {
	CurrentTime     string
	ExpiredTime     string
	AccessKeyId     string
	SecretAccessKey string
	SessionToken    string
}

type CertConfigInitData struct {
	AlgorithmBaseResp *struct {
		StatusCode    int    `json:"status_code"`
		StatusMessage string `json:"status_message"`
	} `json:"algorithm_base_resp"`
	BinaryDataBase64 []string `json:"binary_data_base64"`
	ConfigId         string   `json:"config_id"`
}

type CertConfigInitResult struct {
	RequestId   string              `json:"request_id"`
	Code        int                 `json:"code"`
	Message     string              `json:"message"`
	Status      int                 `json:"status"`
	TimeElapsed string              `json:"time_elapsed"`
	Data        *CertConfigInitData `json:"data"`
}

type CertTokenData struct {
	AlgorithmBaseResp *struct {
		StatusCode    int    `json:"status_code"`
		StatusMessage string `json:"status_message"`
	} `json:"algorithm_base_resp"`
	BinaryDataBase64 []string `json:"binary_data_base64"`
	BytedToken       string   `json:"byted_token"`
	ClientConfig     string   `json:"client_config"`
}

type CertTokenResult struct {
	RequestId   string         `json:"request_id"`
	Code        int            `json:"code"`
	Message     string         `json:"message"`
	Status      int            `json:"status"`
	TimeElapsed string         `json:"time_elapsed"`
	Data        *CertTokenData `json:"data"`
}

type CreateH5token struct {
	ConfigId   string `json:"config_id"`
	StsToken   string `json:"sts_token"`
	Name       string `json:"name"`
	IdCard     string `json:"id_card"`
	BytedToken string `json:"byted_token"`
	//Returnurl  string `json:"returnurl"`
	Url string `json:"url"`
}
